/**
 * 
 */
package com.p2p.front.service;

import java.util.List;
import java.util.Map;
import java.util.TreeMap;

import org.apache.ibatis.annotations.Param;

import com.p2p.front.dal.model.UserInfo;
import com.p2p.front.vo.UserInfoVO;
import com.p2p.user.enums.UserInfoName;

/**
 * @author ruiqi
 *
 */
public interface UserInfoService {

	/**
	 * 根据userId和对应的属性名List查询对应属性
	 * 
	 * @param userId
	 * @param queryNameList
	 * @return
	 */
	public UserInfoVO findByEnumNames(String userId,List<String> queryNameList);
	
	/**
	 * 根据userId和属性名称枚举List查询对应属性
	 * 
	 * @param userId
	 * @param queryNameList
	 * @return
	 */
	public UserInfoVO findByNameEnums(String userId,List<UserInfoName> queryNameList);
	
	public void batchSave(String userId,List<UserInfo> userInfoList	);
	
	/**
	 * 根据userId和 属性名对应的value的Map批量保存
	 * 
	 * @param userId
	 * @param infoValueMap
	 */
	public void batchSave(String userId,TreeMap<UserInfoName,String> infoValueMap);
	
	public void batchSave(UserInfoVO userInfoVO);

	public Map<String, Object> getOne(String userId,UserInfoName infoName);
	
	void updateBorrower(String uid,String auth);
	
	public void updateOne(String userId,UserInfoName infoName,String infoValue);
}
